package com.ibuscloud.union.model;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 核销数据文件表
 * </p>
 *
 * @author 书瞳
 * @since 2022-12-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tb_hx")
@ApiModel(value="Hx对象", description="核销数据文件表")
public class Hx implements Serializable {

    private static final long serialVersionUID = 1L;

    private Long id;

    @ApiModelProperty(value = "客票核销订单号")
    @TableField("ticketOrderNo")
    private String ticketOrderNo;

    @ApiModelProperty(value = "交通出行平台用户id")
    @TableField("userId")
    private String userId;

    @ApiModelProperty(value = "虚拟卡卡号")
    @TableField("cardNo")
    private String cardNo;

    @ApiModelProperty(value = "交通运营商编码")
    @TableField("opId")
    private String opId;

    @ApiModelProperty(value = "交通出行平台订单号")
    @TableField("opOrderNo")
    private String opOrderNo;

    @ApiModelProperty(value = "行业方订单号")
    @TableField("instOrderNo")
    private String instOrderNo;

    @ApiModelProperty(value = "应用名称")
    @TableField("appId")
    private String appId;

    @ApiModelProperty(value = "业务id")
    @TableField("serviceId")
    private String serviceId;

    @ApiModelProperty(value = "客票系统优惠金额，单位：分")
    @TableField("discountPrice")
    private String discountPrice;

    @ApiModelProperty(value = "优惠类型")
    @TableField("discountType")
    private String discountType;

    @ApiModelProperty(value = "消费金额，以分为单位，消费金额=基础金额-行业方优惠金额+扣罚金额")
    @TableField("transAmount")
    private String transAmount;

    @ApiModelProperty(value = "基础金额，以分为单位。客票优惠金额使用基础金额-行业方优惠金额计算")
    @TableField("baseAmount")
    private String baseAmount;

    @ApiModelProperty(value = "扣罚金额，以分为单位")
    @TableField("fineAmount")
    private String fineAmount;

    @ApiModelProperty(value = "行业方优惠金额，以分为单位")
    @TableField("discountAmount")
    private String discountAmount;

    @ApiModelProperty(value = "客票票号")
    @TableField("ticketAccountId")
    private String ticketAccountId;

    @ApiModelProperty(value = "客票类型编码")
    @TableField("ticketTypeId")
    private String ticketTypeId;

    @ApiModelProperty(value = "客票类型名称")
    @TableField("ticketTypeName")
    private String ticketTypeName;

    @ApiModelProperty(value = "核销时间，格式为yyyy-mm-dd HH:mm:ss")
    @TableField("payTime")
    private String payTime;

    @ApiModelProperty(value = "进站站台号")
    @TableField("inStationNo")
    private String inStationNo;

    @ApiModelProperty(value = "出站站台号")
    @TableField("outStationNo")
    private String outStationNo;

    @ApiModelProperty(value = "进站刷码机具流水号")
    @TableField("inPosSerialNo")
    private String inPosSerialNo;

    @ApiModelProperty(value = "出站刷码机具流水号")
    @TableField("outPosSerialNo")
    private String outPosSerialNo;

    @ApiModelProperty(value = "进站线路号")
    @TableField("inLineNo")
    private String inLineNo;

    @ApiModelProperty(value = "出站线路号")
    @TableField("outLineNo")
    private String outLineNo;

    @ApiModelProperty(value = "上车时间，格式为yyyy-mm-dd HH:mm:ss")
    @TableField("inTime")
    private String inTime;

    @ApiModelProperty(value = "下车时间，格式为yyyy-mm-dd HH:mm:ss")
    @TableField("outTime")
    private String outTime;

    @ApiModelProperty(value = "账单日，格式为YYYYMMDD")
    @TableField("billDate")
    private String billDate;

    @ApiModelProperty(value = "预留扩展字段")
    @TableField("extInfo")
    private String extInfo;

    @ApiModelProperty(value = "结算类型 0 - 事后结算 1 - T+1结算")
    @TableField("settleType")
    private String settleType;

    @ApiModelProperty(value = "U点优惠码")
    @TableField("discountCode")
    private String discountCode;

    @ApiModelProperty(value = "优惠状态： 0 - 待处理  1 - 已处理 2 - 超期未处理")
    @TableField("discountStatus")
    private String discountStatus;


}
